Estimating travel times through transportation structures using location traces

ABSTRACT

A method, apparatus, computer program product, and device with various means are disclosed for determining the time it takes to a traverse a transportation structure by enclosing a representation of a transportation structure with a bounding polygon, specifying a plurality of gates which represent legitimate entry or exit points of the transportation structure as one or more edges of the bounding polygon, and computing the travel time for a probe traveling through the bounding polygon via the gates. Computing the probe&#39;s travel time comprises generating a location trace of movement of the probe, determining an entry and exit time, and calculating the difference between the exit time and the entry time. Determining the entry and exist time can be done by interpolation. An average of a set of computations can be used to get an average of the time it takes traverse the transportation structure.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.14/300,729, filed on Jun. 10, 2014, the contents of which are hereinincorporated by reference in their entirety.

TECHNICAL FIELD

This invention relates generally to transportation structures and, morespecifically, to data analysis of vehicle traffic through thosetransportation structures.

BACKGROUND

This section is intended to provide a background or context to theinvention disclosed below. The description herein may include conceptsthat could be pursued, but are not necessarily ones that have beenpreviously conceived, implemented, or described. Therefore, unlessotherwise explicitly indicated herein, what is described in this sectionis not prior art to the description in this application and is notadmitted to be prior art by inclusion in this section.

Currently, the performance of transportation structures, such asintersections, is evaluated by fixed sensors, such as loop detectors,ultra-sonic vehicle detectors, and cameras. These sensors are expensiveto deploy and maintain. Furthermore, they usually cover a small portionof a transportation network such as select highway segments.

Another existing method to evaluate transportation structures is viamicroscopic traffic simulations. This method is usually used forcost-benefit analysis before a structure is built. This method needsreliable calibration of parameters such as traffic arrival rate,distribution of turns, traffic flow rules, and car following rules.These parameters are usually difficult to calibrate.

Recently there have been studies on analyzing intersection delays usinglocation traces, and another body of work defines the boundary of atransportation structure using virtual trip lines (VTL). As described inmore detail below, each of these has problems that could be improvedupon.

SUMMARY

This section contains examples of possible implementations and is notmeant to be limiting.

Various aspects of examples of the invention are set out in the claims.

According to a first aspect of the present invention, an exemplaryapparatus includes one or more processors and one or more memoriesincluding computer program code.

The one or more memories and the computer program code are configured,with the one or more processors, to cause the apparatus to perform atleast the following: enclosing a representation of a transportationstructure with a bounding polygon; specifying a plurality of gates,wherein a gate comprises one or more edges of the bounding polygon thatrepresent a legitimate entry point or exit point of the transportationstructure; and computing a travel time for a probe traveling through thebounding polygon via the gates.

According to a second aspect of the present invention, a methodcomprises enclosing a representation of a transportation structure witha bounding polygon; specifying a plurality of gates, wherein a gatecomprises one or more edges of the bounding polygon that represent alegitimate entry point or exit point of the transportation structure;and computing a travel time for a probe traveling through the boundingpolygon via the gates.

According to a third aspect of the present invention, an exemplarycomputer program product includes a non-transitory computer-readablestorage medium bearing computer program code embodied therein for usewith a computer. The computer program code includes instructions tocontrol or carry out enclosing a representation of a transportationstructure with a bounding polygon; specifying a plurality of gates,wherein a gate comprises one or more edges of the bounding polygon thatrepresent a legitimate entry point or exit point of the transportationstructure; and computing a travel time for a probe traveling through thebounding polygon via the gates.

According to a fourth aspect of the present invention, an exemplarydevice has means for enclosing a representation of a transportationstructure with a bounding polygon; means for specifying a plurality ofgates, wherein a gate comprises one or more edges of the boundingpolygon that represent a legitimate entry point or exit point of thetransportation structure; and means for computing a travel time for aprobe traveling through the bounding polygon via the gates.

BRIEF DESCRIPTION OF THE DRAWINGS

In the attached Drawing Figures:

FIG. 1 is a diagram representing location trace method using a circle;

FIG. 2 is a diagram representing VTL method;

FIG. 3 is a diagram representing an embodiment of this invention;

FIG. 4 is a logic flow diagram illustrating the operation of anexemplary method, a result of execution of computer program instructionsembodied on a computer readable memory, and/or functions performed bylogic implemented in hardware, in accordance with exemplary embodiments;

FIG. 5 is a logic flow diagram illustrating the operation of anotheraspect of an exemplary method, a result of execution of computer programinstructions embodied on a computer readable memory, and/or functionsperformed by logic implemented in hardware, in accordance with exemplaryembodiments;

FIG. 6 is a diagram representing another embodiments of this invention;

FIG. 7 is a diagram representing yet another embodiments of thisinvention;

FIG. 8 is a diagram representing comparison to embodiment of thisinvention;

FIG. 9 is a block diagram of an exemplary logic flow diagram for thecomputer system, probe, and other elements, which illustrates theoperation of an exemplary method, a result of execution of computerprogram instructions embodied on a computer readable memory, and/orfunctions performed by logic implemented in hardware, in accordance withexemplary embodiments herein;

FIG. 10 is an example of creating bounding polygon for an intersection;

FIG. 11 shows how the bounding polygon looks like when overlaid on thegeometry of the intersection; and

FIG. 12 shows computing entry points and exit points by interpolation.

DETAILED DESCRIPTION OF THE DRAWINGS

As briefly indicated above, there have been studies on analyzingintersection delays using location traces, and another body of workdefines the boundary of a transportation structure using virtual triplines (VTL), and there are problems with these techniques that aredescribed herein.

Recently, there have been studies on analyzing intersection delays usinglocation traces. A location trace is a sequence (xi,yi,ti), (x2,Y2,t2),• • • (xibymt.), indicating that a vehicle is at position (xi,yi) attime ti, at position (x₂,y₂) at time t₂, and so on. A vehicle thatcontributes its location traces is called a probe. The authors in thefollowing reference use location traces to estimate intersection trafficdelays in Beijing: Xiliang Liu, Feng Lu, Hengcai Zhang, Peiyuan Qiu,“Intersection delay estimation from floating car data via principalcurves: a case study on Beijing's road network”, Frontiers of EarthScience, 7(2):206-216, 2013.

FIG. 1 depicts an aerial view of a transportation structure andsurrounding buildings, roadways, parking lots, etc. Superimposed on thistransportation structure is a representation of the work of thereference noted in the previous paragraph, showing an intersection 102,with a plurality of roadways 108, and the boundary of an intersectiondefined as a circle 104 centered at the center of the intersection 102.Through this transportation structure passes a probe that has a locationtrace 106. A possible disadvantage of this treatment is that the circlemay enclose areas that do not belong to the intersection 102. Forexample, the circle may enclose facilities such as gas station 110,parking lot 112, or other structures or areas that are not part of thetransportation structure. In this case, a probe may stay inside theboundary but outside the intersection for a long period of time, whichcould be called a “stay point”, shown in FIG. 1 the location trace 106remains for a period of time stopped at stay point 114. The time theprobe stays at the stay point could be counted into the intersectiondelay, which may make the analysis inaccurate.

FIG. 2 shows another body of work which defines the boundary of atransportation structure using virtual trip lines (VTL). Thesereferences include the following: X. Ban, R. Herring, P. Hao, A. Bayen,“Delay Pattern Estimation for Signalized Intersections Using SampledTravel Times”, Transportation Research Record: Journal of theTransportation Research Board, No. 2130, pp. 109-119, 2009; S. Amin, etal., “Mobile Century—Using GPS Mobile Phones as Traffic Sensors: A FieldExperiment”, Proc., 15th World Congress on ITS, New York, 2008; D. Work,0. P. Tossavainen, S. Blandin, A. Bayen, T. Iwuchukwu, and K. Tracton,“An Ensemble Kalman-Filtering Approach to Highway Traffic EstimationUsing GPS-Enabled Mobile Devices”, Proc., 47th IEEE Conference onDecision and Control, Cancun, Mexico, 2008; and B. Hoh, M. Gruteser, R.Herring, J. Ban, D. Work, J. C. Herrera, and A. Bayen, “Virtual TripLines for Distributed Privacy-Preserving Traffic Monitoring”, SixthAnnual International Conference on Mobile Systems, Applications andServices (MobiSys 2008), Breckenridge, Colo., 2008.

As shown in FIG. 2, which depicts the same aerial view as FIG. 1, atransportation structure is shown with surrounding buildings, roadways,parking lots, etc. Superimposed on this transportation structure is arepresentation of the work of the reference noted in the previousparagraph, showing an intersection 202, with a plurality of roadways208. Through this transportation structure passes a probe that has alocation trace 206. Virtual trip lines 204 are artificial line segmentscrossing a road. When a probe passes a VTL 204, it records the time atwhich the VTL 204 is passed. The travel time of the transportationstructure is computed as the length of the time period since a vehiclepasses one VTL 204 until it passes another VTL 204.

The VTL approach shares the same problem as the Location Trace approachdescribed earlier herein in that the approach may falsely include traveltimes that are spent outside the transportation structure. Specifically,after a vehicle passes a VTL, it may move off the road, stay outside thetransportation structure, and then exit at another VTL. This time isfalsely counted into the delay. Thus the sections bounded by VTLs mayenclose areas that do not belong to the intersection 202. For example,they may enclose facilities such as gas station 210, parking lot 212, orother structures or areas not part of the transportation structure. Inthis case, a probe may stay inside the boundary but outside theintersection for a long period of time, which could be called a “staypoint”, shown in FIG. 2, and identified as stay point 214.

“Work Zone Performance Measurement Using Probe Data”, Publication No.FHWA-IIOP-13-043 of the Office of Operations of the Federal HighwayAdministration, U.S. Department of Transportation, September 2013, is areference which discusses another process that uses location traces toestimate work zone traffic delays. However, the method described thereindoes not use location traces directly. Instead, it uses link-basedtravel times report by TMC (Traffic Message Channel) which areaggregated from location traces. However, such Link-based travel timesdo not capture delays vehicles spend at intersections.

An exemplary embodiment of this invention disclosed herein provides amethod that uses location traces to estimate the average time a vehiclespends on traveling through a transportation structure such as anintersection. For an intersection, this method further computes thedelay which is the average time the vehicle spends on traveling throughthe intersection beyond what it would have spent under a free-flowtraffic condition. The method is able to breakdown the delay into turnmovements. The method may be used to evaluate the performance of atransportation structure. It may also be used to evaluate the benefit ofa transportation project by comparing the performance before the adventof the project and that after the project. It may also be used toimprove route planning by taking into account the costs of making turns.

A location trace is a sequence (x₁, y₁, t₁), (x₂, y₂, t₂), . . . (x_(n),y_(n), t_(n)), indicating that a vehicle is at position (x_(i),y₁) attime t₁, at position (x₂,y₂) at time t₂, and so on. Each (xi,yi,ti) iscalled a location point. A vehicle or device that moves through thetransportation structure that contributes its location traces is calleda probe. Location traces may be collected from taxis, trucks, cellphoneusers, computers, mobile devices, devices mounted on or carried bypeople or vehicles, or other sources. A transportation structure is aset of possibly interconnected transportation facilities such ashighways, roadways, bridges, bicycle paths, footpaths, etc. Eachtransportation facility can be represented or modeled in a computer orsome mathematical representation as a polyline or spline with certainwidth or other geometric attributes.

A free-flow traffic condition is a condition in which a driver is ableto travel freely at a speed close to the design speed of a road. For anintersection, a free-flow traffic condition implies that there are notraffic signals to decelerate or stop the vehicle.

A turn movement is a connection of a pair of roads that are joined by anintersection. For example, a left turn is a turn movement, and so are aright turn and a through movement.

FIG. 3 illustrates an embodiment of this invention, where a methodcomprises (i) designating a polygon called bounding polygon thatencloses a studied transportation structure; (ii) designating certainedges of the bounding polygon, referred to as gates, that contain alllegitimate entry points and exit points of the studied transportationstructure; and (iii) computing the travel time that probes spend ontraveling through the bounding polygon via the gates. Given a set oftravels times, an average travel time can be calculated.

FIG. 3, which depicts the same aerial view as in FIG. 1 and FIG. 2,shows a transportation structure and surrounding buildings, roadways,parking lots, etc. Superimposed on this transportation structure is arepresentation of the work of this invention. The transportationstructure comprises an intersection 302, with a plurality of roadways308. Through this transportation structure passes a probe that has alocation trace 306. The bounding polygon 304 surrounds thetransportation structure.

Note, though, that the bounding polygon 304 does not enclose areas thatdo not belong to the intersection 302. For example, they do not enclosefacilities such as gas station 310, parking lot 312, or other structuresor areas not part of the transportation structure. In this case, theproblem of a stay point, discussed earlier, is avoided.

When a probe passes a gate 314, it is within the polygon 304, The gatewhich the probe enters the polygon 304 corresponds to a legitimateaccess point to the intersection 302. FIG. 3 shows the probe enteringvia entry gate 316 and exiting the polygon via exit gate 318, whichcorresponds to a legitimate access point to the intersection 302.

Note that in discussing creating the bounding polygon, that polygon doesnot enclose the actual, physical, real world structure. Rather, somesort of mathematical or computer generated representation, model, orconstruct is developed with inputs taken from the real world structure.The bounding polygon is then created to surround that representation. Itis only shorthand to refer to the bounding polygon to surround thetransportation structure itself. Likewise, legitimate entry and exitpoints are those access points in the actual physical transportationstructure that are permitted for access to the transportation structure.The gates are aspects of the representation of those legitimate pointsin the transportation structure representation.

An exemplary method of creating or designating a bounding polygon of anintersection can be done automatically as follows and as shown in FIG.10 and the result in FIG. 11.

First, the intersection, denoted X, is represented by a node thatconnects multiple line segments wherein each line segment is the centerline of a roadway, see FIG. 10(a) for an illustration.

Second, for each roadway Y that is connected by the intersection, findthe section of Y that starts at a distance H from X and ends at X Thissection is referred to as the delay zone of Y. The thick line in FIG.10(b) shows the delay zone of roadway A. Intuitively, the delay zone ofY represents the section in which vehicles decelerate or stop upon redlight when passing X from Y. The length of the delay zone, i.e. H, canbe set to an estimated maximum queue length when vehicles pass X from Y.

Third, for each roadway Y, extend its delay zone laterally by a width W.This extension forms a rectangle with Y as its centerline, H as itsheight, and Was its width. This rectangle is referred to as the boundingrectangle of Y. FIG. 10(c) shows the bounding rectangle of roadway A.Intuitively, the bounding rectangle of Y represents the area that aprobe point may fall into when probes move within the delay zone. Thewidth of the bounding rectangle, i.e. W, depends on the number of lanes,lane widths, and size of positioning errors. Let m be the number oflanes, L be the width of each lane, and R be the standard deviation ofpositioning errors. W can be set toW in·L−4RThe justification of the above equation is as follows. Assume that thepositioning error follows a normal distribution with standard deviationequal to R, then the probability that a probe point falls into thebounding rectangle defined by H and W when a probe moves within thedelay zone is more than 95%.

And last, compute the union of the bounding rectangles created for allroadways connected by X as shown in FIG. 10(d). The result is thebounding polygon of the intersection X as shown in FIG. 11.

Returning to the discussion of the embodiment of this invention asillustrated in FIG. 3, in the case where the structure is anintersection, the method of an embodiment of the invention furthercomputes the average travel time for through traffic, left turn traffic,right turn traffic, respectively. By comparing the average travel timewith the travel time under a free-flow traffic condition, the method ofthis embodiment of the invention also computes the delay for each turnmovement.

This exemplary embodiment of this invention computes the average traveltime in a transportation structure in the following steps.

A bounding polygon is specified to enclose the transportation structure.The bounding polygon should cover the geometry of the transportationstructure. It could be said that the polygon should tightly bound thepolygon such that it encloses the representation of the transportationstructure as closely as possible. However, the polygon cannot be tooclose to the structure because the movement of the probe within thestructure might have errors. For instance, if the probe is getting itslocation from a satellite in orbit and the satellite has a margin oferror of a few meters or yards, it could put the probe outside of thepolygon bounding the transportation structure if the polygon is tooclose to the edge because the location information could put the probeoutside of that edge. Such an error could be caused by a GPS or someother error factor. Thus, the bounding polygon should have some extentor margin of error to accommodate location errors. This extent couldalso be the width of the line drawing the edge of the polygon. Thepolygon itself could have this factor or margin of error built into thepolygon or it could create an error itself. Thus, this extent couldcover GPS error, cover the structure completely, cover the boundary ofthe polygon, and/or cover some other error, such that the boundingpolygon should cover the representation of the transportation structuretightly except for a margin of error built in as an extension.

As noted earlier, FIG. 3 shows a bounding polygon 304 for anintersection 302.

A set of gates are specified. A gate 314 consists of one or more edgesof the polygon 304. A gate usually crosses a road segment, composed ofroadways 308.

For each location trace 306, compute the time a probe spends ontraveling through the transportation structure.

Compute the first intersection point between the location trace 306 anda gate by interpolation. Designate this point as an entry point 316.Observe that due to positioning errors, the entry point may notnecessarily be the actual point at which the probe enters the gate. Thisis illustrated in FIG. 12. FIG. 12 shows computing entry points and exitpoints by interpolation. The dashed line represents an actual trace of aprobe. The solid arrowed polyline represents a location trace collectedfrom the same probe; each solid circle represents a probe point. Thethick line represents the bounding polygon.

Compute the time at which the probe arrives at the entry point which canbe done by interpolation. Designate this time as an entry time.

Note that interpolation refers to a recovery of the probe's movementbetween two consecutive location points in the location trace. In oneembodiment, interpolation is linear. That is, the probe is assumed tohave moved at a constant velocity vector. In another embodiment,interpolation follows a constant acceleration, wherein the accelerationis determined based on the speed difference at each location point.There may be other forms of interpolation to recover the probe'smovement.

Compute the next intersection point between the location trace 306 and agate, which can be done by interpolation. Designate this intersectionpoint as an exit point 318. Compute the time at which the probe arrivesat the exit point, which can be done by interpolation. Designate thistime as an exit time. If the exit point does not exist and cannot becomputed by interpolation, then do not compute travel time for thislocation trace.

In other words, since the structure of the transportation structurewould be known, the valid entry and exit points would be known. Thismeans that the gates are fixed and predetermined. Data for when theprobe moves through a particular physical point may not be knownexactly. If data comes from some source such that the data does notprovide an exact point when the probe passed through a particular gate,then interpolation would be needed. On the other hand, if the probe andgate are somehow interconnected by signals such that when the probepasses the gate the exact moment is recorded, then interpolation wouldnot be needed. However, interpolation might still prove useful in theTatter situation to get a more accurate fix. If two data points for thelocation of the probe do not coincide with the exact data point of thegate, from the trajectory it might be possible to draw a line betweenthe two data points of the probe's movement and do an interpolation.Since the location trace is likely a set of data of locations at pointat time intervals, interpolation, whether linear or by some othermethod, will likely be necessary.

Compute the travel time of the probe which is the difference between theexit time and the entry time.

Computing the average travel time by averaging the travel time among alllocation traces. Note that if an entry point or exit point does notexist for a particular location trace and cannot be computed byinterpolation, but the travel time for that particular probe trace wasdetermined, that travel time would be excluded from the averaging.

FIG. 4 is a logic flow diagram illustrating the operation of anexemplary method, a result of execution of computer program instructionsembodied on a computer readable memory, and/or functions performed bylogic implemented in hardware, in accordance with exemplary embodiments.

The method comprises enclosing a representation of a transportationstructure with a bounding polygon 402; specifying a plurality of gates404; and computing a travel time for a probe traveling through thebounding polygon via the gates 406. Data regarding the transportationstructure has to be collected in order to create the representation ofthe transportation structure 408. Information regarding gates also hasto be entered such that a gate comprises one or more edges of thebounding polygon that represent a legitimate entry point or exit pointof the transportation structure 410.

FIG. 5 is a logic flow diagram illustrating the operation of anotheraspect of an exemplary method, a result of execution of computer programinstructions embodied on a computer readable memory, and/or functionsperformed by logic implemented in hardware, in accordance with exemplaryembodiments.

In an exemplary embodiment thereof, the computing of the travel time forthe probe comprises generating a location trace of movement of the probe502; determining an entry and exit time 504; and calculating the traveltime of the probe which is the difference between the exit time and theentry time 506. To determine the entry time, which is the time when theprobe passes an entry point, the entry point is a first intersectionpoint between the location trace and a first gate 508. To determine anexit time when the probe passes an exit point, the exit point is asecond intersection point between the location trace and a second gate510. If there is no data point for the location trace at the moment thatit passes the through the first gate give or take some acceptablemargin, then the first intersection point would be arrived at orestablished by interpolation 512. In a further embodiment if there is nodata point for the location trace at the moment that it passes thethrough the second gate, give or take some acceptable margin, then thefirst intersection point would be arrived at or established byinterpolation 514.

FIG. 6 illustrates a variant on the above method. The same aerialrepresentation of the transportation structure show intersection 602which the probe passes through shown with bounding polygon 604 locationtrace 606. In this variant, the average travel time for a specific turnmovement is computed. For this purpose, a pair of gates (G_entry,G_exit) needs to be specified which restricts that a location trace mustenter at G_entry 616 and exit at G_exit 620 in order for its travel timeto be counted toward the average travel time. The procedure for thisvariant is described as follows.

A bounding polygon is specified to enclose the transportation structure.

A pair of gates (G_entry, G_exit) are specified for the studied turnmovement.

For each location trace, compute the time the probe spends on travelingthrough the turn movement as follows:

Compute the first intersection point between the location trace and theGentry gate. Designate this point as an “entry point”. Compute the timeat which the probe arrives at the entry point by interpolation.Designate this time as an “entry time”. If the entry point does notexist or cannot be determined by interpolation, then do not computetravel time for this location trace.

Compute the next intersection point between the location trace and thebounding polygon. If the intersection point exists and is located at theG_exit gate, designate this intersection point as an “exit point”.Compute the time at which the probe arrives at the exit point byinterpolation. Designate this time as an “exit time”. If theintersection point does not exist or cannot be determined byinterpolation or it exists but does not locate at the G_exit gate, thendo not compute travel time for this location trace. By not exiting atG_exit, it could mean that the probe could have exited at a differentgate than selected for this exemplary embodiment and thus would not beincluded because such a probe would not be making the selected turn.

Compute the travel time of the probe which is the difference between theexit time and the entry time.

Computing the average travel time by averaging the travel time among alllocation traces.

FIG. 7 illustrates another variant of the method. In this variant, FIG.7 uses a different aerial representation, the bounding polygon 704contains holes 708 and 710. The holes exclude the areas for which traveltimes are not to be counted. The previously described procedures carryover to this variant without any modifications. The polygon has gates716, 718, 720, 722, and 724. Inside hole 708 there could be stay point726. By using the invention disclosed herein, the polygon will have aninner boundary 712 which would ensure that the time spent at the staypoint 726 could be excluded froth computations. Hole 710 is alsoexcluded by means of inner bounding polygon 714. What was typicallythought of as the bounding polygon 704 would have both inner boundingpolygon 714 and outer bounding polygon 728 components.

In another variant, also shown in FIG. 7, one or more edges of thebounding polygon are curves 706 as opposed to straight lines.

Non-limiting examples of subjects that this exemplary embodiment of thisinvention relates to are the following: delay analysis applications fortransportation structures such as intersections and bridges; benefitevaluation applications for transportation projects; traffic analysisapplications; work/construction zone performance evaluation; roadintersection delay analysis; mutable maps, trip/route planning; routeplanning with turn costs; navigation systems; probe data; locationtraces; gps traces; and floating car data.

Non-limiting examples of potential users of this exemplary embodiment ofthis invention include the following: transportation agencies;transportation consulting companies; routable map producers; trip/routeplanning service providers; fleet management; and any users who areinterested in knowing the expected travel time that is needed to pass atransportation structure.

For one non-limiting example, a transportation agency could use thisexemplary embodiment of this invention to evaluate the benefit of anintersection improvement project. For this purpose, the agency computesthe average delay of the intersection using one year of location tracescollected before the project started and the average delay of theintersection using one year of location traces collected after theproject was completed. The reduction of the average delay after theproject was completed indicates a benefit of the project.

As another non-limiting example, a route/trip planning service providercould use this exemplary embodiment of this invention to estimate turndelays at each intersection in a road network. Turn delays areincorporated in route/trip planning to increase the reliability ofroutes.

Compared to the sensor based solution, this exemplary embodiment of thisinvention saves the cost of deploying and maintaining sensors.

Compared to the first reference mentioned in this disclosure using alocation trace method, this exemplary embodiment of this invention usesa bounding polygon instead of a circle as the boundary of anintersection. The bounding polygon encloses the intersection.Furthermore, this exemplary embodiment of this invention uses gates torestrict legitimate entry points and exit points. These measures ensurethat only the travel times that are spent on traveling the intersectionare counted toward the average travel time. Thus, the average traveltime computed by this exemplary embodiment of this invention is moreaccurate than that computed by the location trace method with a circleused by the first reference mentioned in this disclosure.

FIG. 8 shows a comparison example of the current exemplary embodiment ofthis invention to the location trace with circle method and the VTLmethod. In this figure, using the same aerial representation as earlier,intersection 802 has bounding polygon 804 with location trace 806 mimingthrough gate 834 and out of gate 830 but also shows the earlier work ofthe bounding circle 840. The stay point 814 falls into the circleboundary 840 and thus will be falsely counted toward travel time usingapproach of the location trace method with a circle. It falls outsidethe polygon boundary and thus will not be counted toward travel timeusing this exemplary embodiment of this invention.

Also shown in FIG. 8 are VTL lines 832 and 836, where the location tracepasses VTL 836 and exits VTL 832. Compared to the virtual trip line(VTL) approach described earlier, this exemplary embodiment of thisinvention uses a bounding polygon 804 to enclose an intersection 802.Thus, travel times spent outside the intersection are not counted towardthe intersection delay. However as can be seen from FIG. 8, the VTLapproach may falsely count travel times spent outside the intersection,such as at stay point 814, as discussed earlier.

Thus, in this comparison example of the current invention to the VTLapproach, the probe stays at the stay point 814 while it travels betweentwo gates. The VTL approach will count the stay time at the stay point814 toward the intersection delay but this invention will not do so.This invention will discard the probe data because the stay point isoutside the intersection structure.

Another difference between the current invention and the VTL approach isthat the VTL approach requires that a participating vehicle knows aboutthe VTLs and generates reports when passing a VTL. Our approach is notburdened with such a requirement; we can compute VTL passing times byinterpolation.

Compared to the Link-based method referenced earlier, this invention isable to compute the travel time for turn movements, whereas theLink-based method can only compute the travel time for a road segment ora part of a road segment.

An exemplary embodiment of this invention would be characterized by amethod comprising enclosing a representation of a transportationstructure with a bounding polygon, specifying a plurality of gates, andcomputing a travel time for a probe traveling through the boundingpolygon via the gates, wherein a gate comprises one or more edges of thebounding polygon that represent a legitimate entry point or exit pointof the transportation structure.

In an exemplary embodiment of this invention, the bounding polygon canhave an inner and outer boundary. Such an embodiment is shown in thesituation where there are holes in the transportation structure and suchholes could have stay points. In order to eliminate these holes, thepolygon would wrap on the inside boundary of the representation of thetransportation structure.

In an exemplary embodiment of this invention, the computing of thetravel time for the probe comprises generating a location trace ofmovement of the probe; determining an entry time when the probe passesan entry point, wherein the entry point is a first intersection pointbetween the location trace and a fast gate; determining an exit timewhen the probe passes an exit point, wherein the exit point is a secondintersection point between the location trace and a second gate; andcalculating the travel time of the probe which is the difference betweenthe exit time and the entry time.

In a further embodiment if there is no data point for the location traceat the moment that it passes the through the first gate give or takesome acceptable margin, then the first intersection point would bearrived at or established by interpolation. In a further embodiment ifthere is no data point for the location trace at the moment that itpasses the through the second gate, give or take some acceptable margin,then the first intersection point would be arrived at or established byinterpolation.

Averaging a set of travel times can yield interesting data on thetransportation structure. Averaging the travel times produces usableresults when the averages represent a particular path. Thus, anexemplary embodiment would be to average a set of travel times. Inanother embodiment, a set comprises only those travel times whereineither (i) the entry point exists or can be determined by interpolationand (ii) the exit point exists or can be determined by interpolation. Ina further embodiment the set is restricted to only travel times using apreselected first gate and a preselected second gate. Such an embodimentcould be used to measure the time it takes to make a turn or follow aparticular path through a transportation structure.

Embodiments of the present invention may be implemented in software(executed by one or more processors), hardware (e.g., an applicationspecific integrated circuit), or a combination of software and hardware.In an example embodiment, the software (e.g., application logic, aninstruction set) is maintained on any one of various conventionalcomputer readable media. In the context of this document, a “computerreadable medium” may be any media or means that can contain, store,communicate, propagate or transport the instructions for use by or inconnection with an instruction execution system, apparatus, or device,such as a computer, with one example of a computer described anddepicted for example in FIG. 9 or where an apparatus comprises at leastone processor and at least one memory including computer program code,wherein the at least one memory and the computer code are configured to,with the at least one processor, cause the apparatus to at least performenclosing a representation of a transportation structure with a boundingpolygon, specifying a plurality of gates, and computing a travel timefor a probe traveling through the bounding polygon via the gates, wherea gate comprises one or more edges of the bounding polygon thatrepresent a legitimate entry point or exit point of the transportationstructure.

A computer readable medium may comprise a computer readable storagemedium (e.g., memory(ies) or other device) that may be any media ormeans that can contain or store the instructions for use by or inconnection with an instruction execution system, apparatus, or device,such as a computer. A computer readable storage medium does not,however, encompass propagating signals. A computer readable medium couldbe part of a computer program product.

FIG. 9 shows a block diagram of an exemplary system in which theexemplary embodiments may be practiced. The block diagram represents anexemplary logic flow diagram for the computer system, probe, and otherelements, which illustrates the operation of an exemplary method, aresult of execution of computer program instructions embodied on acomputer readable memory, and/or functions performed by logicimplemented in hardware, in accordance with exemplary embodimentsherein. The blocks can also represent or considered to be interconnectedmeans for performing the functions in the blocks.

In FIG. 9, a computing system 902 is in communication with a network 930via network interface 924 and in communication with external device(s)940 and probe(s) 950 via an input/output interface 926. The computingsystem 902 includes one or more processors 920, one or more memories904, and circuitry 922, which may have one or more transceiversinterconnected through one or more buses, where the one or moretransceivers are connected to one or more antennas. The one or morememories 904 include computer program code 918, information concerningat least map(s) 906 with transportation structure(s), polygon(s) 908,gate(s) 910, location tracing(s) 914, turn(s) 916, and timing(s) 912comprising entry and exit time(s) or the data points to be able tointerpolate those times, turns, and tracings. The one or more memories902 and the computer program code 918 are configured with the one ormore processors 920 to cause the computer system 902 to perform one ormore of the operations as described herein.

A probe 950 includes one or more processors 960, one or more memories962, one or more interfaces 968 with the computing system and possiblyone or more interfaces with the external device(s) 940, and network 930but the probe 950 is nonetheless connected to the external devices 940and the network 930 at least through the computing system 902.

Moreover, Frobe(s) 950 may contain computing system 902 within it and/ormay contain the external device(s) 940 within it. In fact anycombination of the elements (computing system 902, Probe(s) 950, Network930, and external device(s) 940) is possible. In any event, theconnections between the computing system 902, Probe(s) 950, Network 930,and external device(s) 940 can be wired or wireless.

The one or more memories 962 include computer program code 964. The oneor more memories 962 and the computer program code 964 are configuredwith the one or more processors 960 to cause the Probe 950 to performone or more of the operations as described herein.

The network 930 may include a network control element (NCE) 932 that mayinclude functionality which provides connectivity with a furthernetwork, such as a telephone network and/or a data communicationsnetwork (e.g., the Internet). The computing system is coupled via anetwork 930 to the NCE 932. The NCE 932 includes one or more processors,one or more memories, and one or more network interfaces, interconnectedthrough one or more buses, where these one or more memories also includecomputer program code such that these one or more memories and thecomputer program code are configured, with the NCE's one or moreprocessors, cause the NCE 932 to perform one or more operations.

The external devices may include connectivity elements with thecomputing system 902 and possibly with the network 930 and probe(s) 950directly, too. The external device(s) are at least coupled to thenetwork 930 via and probe(s) 950 via the computing system 902. Theexternal device(s) include one or more processors, one or more memories,and one or more network interfaces, interconnected through one or morebuses, where these one or more memories also include computer programcode such that these one or more memories and the computer program codeare configured, with an external device's one or more processors, causethe external device(s) to perform one or more operations.

The computer readable memories 904, 962, and those in the NCE andexternal devices may be of any type suitable to the local technicalenvironment and may be implemented using any suitable data storagetechnology, such as semiconductor based memory devices, flash memory,magnetic memory devices and systems, optical memory devices and systems,fixed memory and removable memory. The processors 920, 960, and those inthe NCE and external devices may be of any type suitable to the localtechnical environment, and may include one or more of general purposecomputers, special purpose computers, microprocessors, digital signalprocessors (DSPs) and processors based on a multi-core processorarchitecture, as non-limiting examples.

In general, the various embodiments of the probe 950 can include, butare not limited to, cellular telephones such as smart phones, personaldigital assistants (PDAs) having wireless communication capabilities,portable computers having wireless communication capabilities, imagecapture devices such as digital cameras having wireless communicationcapabilities, gaming devices having wireless communication capabilities,music storage and playback appliances having wireless communicationcapabilities,” Internet appliances permitting wireless Internet accessand browsing, tablets with wireless communication capabilities, as wellas portable units or terminals that incorporate combinations of suchfunctions.

An exemplary embodiment of the invention is a method comprising:enclosing a representation of a transportation structure with a boundingpolygon; specifying a plurality of gates, wherein a gate comprises oneor more edges of the bounding polygon that represent a legitimate entrypoint or exit point of the transportation structure; and computing atravel time for a probe traveling through the bounding polygon via thegates.

A further aspect of the exemplary method would be wherein the computingcomprises: generating a location trace of movement of the probe;determining an entry time when the probe passes an entry point, whereinthe entry point is a first intersection point between the location traceand a first gate; determining an exit time when the probe passes an exitpoint, wherein the exit point is a second intersection point between thelocation trace and a second gate; and calculating the travel time of theprobe which is the difference between the exit time and the entry time.

A further aspect of the exemplary method would be where the firstintersection point is established by interpolation, the secondintersection point is established by interpolation, or both points areestablished by interpolation.

A further aspect of the exemplary method would be the method furthercomprising averaging a set of travel times.

A further aspect of the exemplary method would be where the setcomprises only those travel times wherein the entry and exit point canbe determined.

A further aspect of the exemplary method would be where the set isrestricted to only travel times using a preselected first gate and apreselected second gate.

A further aspect of the exemplary method would be where thetransportation structure is defined as an intersection.

A further aspect of the exemplary method would be where the boundingpolygon has an outer boundary and an inner boundary.

An exemplary embodiment of the invention is an apparatus comprising atleast one processor and at least one memory including computer programcode, wherein the at least one memory and the computer code areconfigured, with the at least one processor, to cause the apparatus toat least perform the following enclosing a representation of atransportation structure with a bounding polygon; specifying a pluralityof gates, wherein a gate comprises one or more edges of the boundingpolygon that represent a legitimate entry point or exit point of thetransportation structure; and computing a travel time for a probetraveling through the bounding polygon via the gates.

A further aspect of the exemplary apparatus would be where the computingcomprises generating a location trace of movement of the probe;determining an entry time when the probe passes an entry point, whereinthe entry point is a first intersection point between the location traceand a first gate; determining an exit time when the probe passes an exitpoint, wherein the exit point is a second intersection point between thelocation trace and a second gate; and calculating the travel time of theprobe which is the difference between the exit time and the entry time.

A further aspect of the exemplary apparatus would be where the firstintersection point is established by interpolation, the secondintersection point is established by interpolation, or both points areestablished by interpolation.

A further aspect of the exemplary apparatus would be where the at leastone memory and the computer code are further configured, with the atleast one processor, to cause the apparatus to at least performaveraging a set of travel times.

A further aspect of the exemplary apparatus would be where the setcomprises only those travel times where the entry point and the exitpoint can be determined.

A further aspect of the exemplary apparatus would be where the firstgate and the second gate are preselected.

A further aspect of the exemplary apparatus would be where thetransportation structure is defined as an intersection.

A further aspect of the exemplary apparatus would be where the boundingpolygon has an outer boundary and an inner boundary.

A further aspect of the exemplary apparatus would be where the apparatusfurther comprises the probe.

An exemplary embodiment of the invention is a computer program productembodied on a non-transitory computer-readable medium in which acomputer program is stored that, when being executed by a computer, isconfigured to provide instructions to control or carry out: enclosing arepresentation of a transportation structure with a bounding polygon;specifying a plurality of gates, wherein a gate comprises one or moreedges of the bounding polygon that represent a legitimate entry point orexit point of the transportation structure; and computing a travel timefor a probe traveling through the bounding polygon via the gates.

An exemplary embodiment of the invention could also be a device withmeans for enclosing a representation of a transportation structure witha bounding polygon, means for specifying a plurality of gates, and meanscomputing a travel time for a probe traveling through the boundingpolygon via the gates, where a gate comprises one or more edges of thebounding polygon that represent a legitimate entry point or exit pointof the transportation structure.

If desired, the different functions discussed herein may be performed ina different order and/or concurrently with each other. Furthermore, ifdesired, one or more of the above-described functions may be optional ormay be combined.

Although various aspects of the invention are set out in the independentclaims, other aspects of the invention comprise other combinations offeatures from the described embodiments and/or the dependent claims withthe features of the independent claims, and not solely the combinationsexplicitly set out in the claims.

It is also noted herein that while the above describes exampleembodiments of the invention, these descriptions should not be viewed ina limiting sense. Rather, there are several variations and modificationswhich may be made without departing from the scope of the presentinvention as defined in the appended claims.

That which is claimed:
 1. An apparatus comprising at least one processorand at least one memory including computer program code, wherein the atleast one memory and the computer code are configured, with the at leastone processor, to cause the apparatus to perform the following: enclosea representation of a transportation structure with a bounding polygon;specify a plurality of gates, wherein a gate comprises one or more edgesof the bounding polygon that represent a legitimate entry point or exitpoint of the transportation structure; generate a location trace ofmovement of a probe through the bounding polygon; interpolate at leastone of the entry point or the exit point in response to a data point notbeing available in the generated trace of movement proximate therespective one of the entry point or the exit point; and compute atravel time for the probe traveling through the bounding polygon via thegates, wherein computing the travel time for the probe comprises causingthe apparatus to: determine an entry time of when the probe passes anentry point; determine an exit time of when the probe passes an exitpoint; and determine the travel time as a difference between the entrytime and the exit time.
 2. The apparatus of claim 1, wherein causing theapparatus to enclose the representation of the transportation structurewith a bounding polygon comprises causing the apparatus to: identify anode representing a center of the transportation structure, wherein thetransportation structure is an intersection of at least two roadways;for each of the at least two roadways, determine a delay zone extendinga distance from the node of the intersection along a respective one ofthe at least two roadways; determine a width for each delay zone, andgenerate a bounding polygon comprising the delay zones of each of the atleast two roadways.
 3. The apparatus of claim 2, wherein causing theapparatus to determine a width for each delay zone comprises, for eachof the at least two roadways, causing the apparatus to determine a widthbased on a number of lanes of the respective roadway, a width of eachlane, and a standard deviation of positioning errors of a determinedlocation of the respective roadway.
 4. The apparatus of claim 2, whereincausing the apparatus to determine a delay zone extending a distancefrom the node of the intersection along a respective one of the at leasttwo roadways comprises causing the apparatus to determine a distance atwhich vehicles approaching the intersection begin to decelerate inanticipation of a stop at the intersection.
 5. The apparatus of claim 4,wherein the distance the delay zone extends along a respective one ofthe at least two roadways is established as the distance at whichvehicles approaching the intersection begin to decelerate.
 6. A computerprogram product embodied on a non-transitory computer-readable medium inwhich a computer program is stored that, when executed by a computer, isconfigured to provide instructions to control or carry out: enclosing arepresentation of a transportation structure with a bounding polygon;specifying a plurality of gates, wherein a gate comprises one or moreedges of the bounding polygon that represent a legitimate entry point orexit point of the transportation structure; generating a location traceof movement of a probe through the bounding polygon; interpolate atleast one of the entry point or the exit point in response to a datapoint not being available in the generated trace of movement proximatethe respective one of the entry point or the exit point; and computing atravel time for the probe traveling through the bounding polygon via thegates, wherein computing the travel time for the probe comprises:determining an entry time of when the probe passes an entry point;determining an exit time of when the probe passes an exit point; anddetermining the travel time as a difference between the entry time andthe exit time.
 7. The computer program product of claim 6, furtherconfigured to provide instructions to control or carry out: identifyinga node representing a center of the transportation structure, whereinthe transportation structure is an intersection of at least tworoadways; for each of the at least two roadways, determining a delayzone extending a distance from the node of the intersection along arespective one of the at least two roadways; determining a width foreach delay zone, and generating a bounding polygon comprising the delayzones of each of the at least two roadways.
 8. The computer programproduct of claim 7, wherein the instructions for determining a width foreach delay zone comprises, for each of the at least two roadways,instructions for determining a width based on a number of lanes of therespective roadway, a width of each lane, and a standard deviation ofpositioning errors of a determined location of the respective roadway.9. The computer program product of claim 7, wherein the instructions fordetermining a delay zone extending a distance from the node of theintersection along a respective one of the at least two roadwayscomprises instructions for determining a distance at which vehiclesapproaching the intersection begin to decelerate in anticipation of astop at the intersection.
 10. The computer program product of claim 9,wherein the distance the delay zone extends along a respective one ofthe at least two roadways is established as the distance at whichvehicles approaching the intersection begin to decelerate.
 11. A methodcomprising: enclosing, by a processor, a representation of atransportation structure with a bounding polygon; specifying a pluralityof gates, wherein a gate comprises one or more edges of the boundingpolygon that represent a legitimate entry point or exit point of thetransportation structure; generating, by the processor, a location traceof movement of a probe through the bounding polygon; interpolating atleast one of the entry point or the exit point in response to a datapoint not being available in the generated trace of movement proximatethe respective one of the entry point or the exit point; and computing atravel time for the probe traveling through the bounding polygon via thegates, wherein computing the travel time for the probe comprises:determining an entry time of when the probe passes an entry point;determining an exit time of when the probe passes an exit point; anddetermining the travel time as a difference between the entry time andthe exit time.
 12. The method of claim 11, further comprising:identifying a node representing a center of the transportationstructure, wherein the transportation structure is an intersection of atleast two roadways; for each of the at least two roadways, determining adelay zone extending a distance from the node of the intersection alonga respective one of the at least two roadways; determining a width foreach delay zone, and generating a bounding polygon comprising the delayzones of each of the at least two roadways.
 13. The method of claim 12,wherein determining a width for each delay zone comprises, for each ofthe at least two roadways, determining a width based on a number oflanes of the respective roadway, a width of each lane, and a standarddeviation of positioning errors of a determined location of therespective roadway.
 14. The method of claim 12, wherein determining adelay zone extending a distance from the node of the intersection alonga respective one of the at least two roadways comprises determining adistance at which vehicles approaching the intersection begin todecelerate in anticipation of a stop at the intersection.
 15. The methodof claim 14, wherein the distance the delay zone extends along arespective one of the at least two roadways is established as thedistance at which vehicles approaching the intersection begin todecelerate.